package com.learngittesting.dsnTest;

import java.util.*;

/**
 * @author DongSinan
 * @date 2022/2/17 14:38
 */
public class MapTest {
    Map<Integer, String> map = new HashMap();

    /**
     * 随意添加一些元素
     */
    public void mapAdd() {
        map.put(1, "小米");
        map.put(3, "大米");
        map.put(5, "小雨");
        map.put(6, "大雨");
        map.put(9, "大雨");
    }

    /**
     * 删除一个元素
     */
    public void mapDel() {
        map.remove(1);
        map.remove(6, "大雨");
    }

    /**
     * 删除全部元素
     */
    public void mapAllDel() {
        map.clear();
    }


    /**
     * 由key获得value
     *
     * @param key
     * @return Value
     */
    public String getMapValue(Integer key) {
        return map.get(key);
    }


    /**
     * map转为set集合，使用迭代器输出
     */
    public void mapErgodicity1() {
        Set<Integer> keys = map.keySet();
        for (Integer key : keys) {
            System.out.println(key + "=" + map.get(key));
        }
    }


    /**
     * map的key转为set的数字，再用foreach遍历
     */
    public void mapErgodicity2() {
        Set<Map.Entry<Integer, String>> entrySet = map.entrySet();
        Iterator iterator = entrySet.iterator();

        while (iterator.hasNext()) {
            System.out.println(iterator.next());
        }
    }


    /**
     * 使用Lambda
     */
    public void mapErgodicity3() {
        map.forEach((k,v)-> {
                            System.out.println(k+":"+v);
                        });
    }

}
